package com.example.techstudy.entity;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

/**
 * ff_marketing_task
 * @author 
 */
@Data
@TableName("ff_marketing_task")
public class MtTask implements Serializable {
    /**
     * 自增任务ID
     */
    private Long id;

    /**
     * 机器人ID
     */
    private Integer botId;

    /**
     * 任务名称
     */
    private String name;

    /**
     * 任务类型，1：一次性；2：每日；3：每周；4：每月
     */
    private Integer taskType;

    /**
     * 任务开始时间
     */
    private Date startTime;

    /**
     * 任务结束时间
     */
    private Date endTime;

    /**
     * 执行时间（用于固定周期任务存cron表达式）
     */
    private String execRule;

    /**
     * 用户数据类型，1：pin；2：用户标签；3：手机号（其对应渠道只能是短信或外呼）
     */
    private Integer userDataType;

    /**
     * 用户数据源，1：jss；2：es index
     */
    private Integer userDataSource;

    /**
     * 用户数据jss地址、es信息 或 用户标签信息
     */
    private String userDataDetail;

    /**
     * 渠道
     */
    private String channel;

    /**
     * 任务状态，1：待开始；2：生效中（周期型任务才有此状态）；3：执行中；4：已完成；5：已禁用
     */
    private Integer status;

    /**
     * userPin数量
     */
    private Integer pinCount;

    /**
     * 咚咚话术内容
     */
    private String ddContent;

    /**
     * 父id
     */
    private Long parentId;

    /**
     * ab发送百分比
     */
    private Integer abPercent;

    /**
     * 再营销任务执行规则
     */
    private String reMarketingRule;

    /**
     * 创建人PIN
     */
    private String createPin;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 修改人PIN
     */
    private String modifyPin;

    /**
     * 修改时间
     */
    private Date modifyTime;

    /**
     * 是否可用
     */
    private Integer yn;

    /**
     * 失败信息
     */
    private String failMessage;

    /**
     * 发送上线最大值
     */
    private Integer maxPinCount;

    /**
     * 最近一次发送成功用户数
     */
    private String successPinPercent;

    /**
     * 周期性任务刷新pin标识。1：刷新，0：代表不刷新，一次性任务，此字段为空
     */
    private Integer refreshPin;

    /**
     * 排除发送天数（用于周期性话术排除已发客户校验）
     */
    private Integer excludeDaysSend;

    /**
     * 代运营计划ID
     */
    private Long planId;

    /**
     * 1：自建任务、2：代运营任务
     */
    private Integer createType;

    /**
     * 跨任务去重
     */
    private String excludeTaskId;

    /**
     * 首次预估的userPin数量
     */
    private Integer prePinCount;

    /**
     * 冗余 短信模板中的内容
     */
    private String smsContent;

    /**
     * ab发送类型 0：不使用ab话术 1：ab试验 2：ab对比
     */
    private Integer abType;

    /**
     * 上线版本（历史任务=null    2.0迭代=2   新增画布=3)
     */
    private Integer version;

    /**
     * 下次执行时间
     */
    private Date nextExecTime;

    private static final long serialVersionUID = 1L;
}